BDIA=0, CLUTFORMAT=0, COLKEYENABLE=0, WRITEFORMAT10=00, READFORMAT10=00, CLUTENABLE=0, BC2=0, TEXTURECLAMPY=0, BDI=0, BSIA=0, BSI=0, BSF=0, BDFA=0, BSFA=0, RLEPIXELWIDTH=00, RLEENABLE=0, TEXTUREFILTERX=0, TEXTUREENABLE=0, PATTERNENABLE=0, WRITEALPHA=00, TEXTUREFILTERY=0, TEXTURECLAMPX=0, BDF=0, USEACB=0
Surface Control Register
PATTERNENABLE | Pixel source is a pattern color (blend of COLOR1 and COLOR2 depending on PATTERN and pattern index) 0 (0): disabled pattern 1 (1): enabled pattern |
TEXTUREENABLE | Pixel source is read from texture and used as an alpha to blend between COLOR1 and COLOR2 0 (0): disabled texture 1 (1): enabled texture |
PATTERNSOURCEL5 | Limiter 5 is used as pattern index instead of the default U limiter.Limiter 5 can be combined with limiter 6 to form a quadratic limiter which can be used to make quadratic pattern functions to draw radial patterns. |
USEACB | Alpha blend mode 0 (0): use WRITEALPHA[1:0] mode 1 (1): use full alpha channel blending mode |
READFORMAT32 | Bit 4 and 3 of the texture buffer format.See READFORMAT above for description |
BSFA | Blend source factor for alpha channel in alpha channel blending mode (USEACB = 1) 0 (0): use 1.0 as blend source factor for alpha channel 1 (1): use alpha as blend source factor for alpha channel |
BDFA | Blend destinetion factor for alpha channel in alpha channel blending mode (USEACB = 1) 0 (0): use 1.0 as blend destination factor for alpha channel 1 (1): use alpha as blend destination factor for alpha channel |
WRITEFORMAT2 | Bit 3 of framebuffer pixel formatSee WRITEFORMAT above description. |
BSF | Blend source factorsrc factor is alpha (factor is 1 per default) 0 (0): use 1.0 as blend source factor 1 (1): use alpha as blend source factor |
BDF | Blend destination factordst factor is alpha (factor is 1 per default) 0 (0): use 1.0 as blend destination factor 1 (1): use alpha as blend destination factor |
BSI | Blend source factor is invertedsrc factor will be inverted (meaning 1-a or 1-1 depending on BSF) 0 (0): use blend factor as specified through BSF 1 (1): invert blend source factor (1-x) |
BDI | Blend destination factor is inverteddst factor will be inverted (meaning 1-a or 1-1 depending on BDF) 0 (0): use blend factor as specified through BDF 1 (1): invert blend destinationfactor (1-x) |
BC2 | Blend color 2 instead of framebuffer pixel 0 (0): use pixel from framebuffer as destination (DST) 1 (1): use color 2 as destination (DST) |
TEXTURECLAMPX | Calculating U limiter outside use textureThe bit describes what happens if the U limiter (x direction in texture space) calculates a U value outside of the used texture 0 (0): Texture wrap mode: The integer part of the calculated value from the u limiter is anded with TEXUMASK. This results in a repetition of the texture in x/u direction. 1 (1): Texture clamp mode: The texture color at the border of the texture is taken. This results in a repetition of the texture border color in x/u direction. |
TEXTURECLAMPY | Calculating V limiter outside use textureThe bit describes what happens if the V limiter (y direction in texture space) calculates a V value outside of the used texture 0 (0): Texture wrap mode: The integer part of the calculated value from the v limiter is anded with TEXVMASK. This results in a repetition of the texture in y/v direction. 1 (1): Texture clamp mode: The texture color at the border of the texture is taken. This results in a repetition of the texture border color in y/v direction. |
TEXTUREFILTERX | Linear filtering on texture U axis 0 (0): no filtering on texture U axis 1 (1): linear filtering on texture U axis |
TEXTUREFILTERY | Linear filtering on texture V axis 0 (0): no filtering on texture V axis 1 (1): linear filtering on texture V axis |
READFORMAT10 | Pixel format of the texture buffer{READFORMAT32,READFORMAT10}0000: 8 bpp a(8)0001: 16 bpp RGB(565)0010: 32 bpp aRGB(8888)0011: 16 bpp aRGB(4444)0100: 16 bpp aRGB(1555)0101: 8 bpp aCLUT(44) 4 bit alpha and 4 bit indexed color1001: 8 bpp CLUT(8)/I(8), 8 bit indexed color/luminance1010: 4 bpp CLUT(4)/I(4), 4 bit indexed color/luminance1011: 2 bpp CLUT(2)/I(2), 2 bit indexed color/luminance 1100: 1 bpp CLUT(1)/I(1), 1 bit indexed color/luminance 0 (00): 8 bpp a(8) (READFORMAT32=00) / 16 bpp aRGB(1555) (READFORMAT32=01) / 1 bpp CLUT(1)/I(1), 1 bit indexed color/luminance (READFORMAT32=11) 1 (01): 16 bpp RGB(565) (READFORMAT32=00) / 8 bpp aCLUT(44) 4 bit alpha and 4 bit indexed color (READFORMAT32=01) / 8 bpp CLUT(8)/I(8), 8 bit indexed color/luminance (READFORMAT32=10) 2 (10): 32 bpp aRGB(8888) (READFORMAT32=00) / 4 bpp CLUT(4)/I(4), 4 bit indexed color/luminance (READFORMAT32=10) 3 (11): 16 bpp aRGB(4444) (READFORMAT32=00) / 2 bpp CLUT(2)/I(2), 2 bit indexed color/luminance (READFORMAT32=10) |
WRITEFORMAT10 | Pixel format of the framebuffer 0 (00): 8bpp a(8)0 1 (01): 16bpp RGB(565) 2 (10): 32bpp aRGB(8888) 3 (11): 16bpp aRGB(4444) |
WRITEALPHA | Writeback alpha source for framebufferSet the ‘alpha source’ for the framebuffer(USEACB = 0)Blend alpha in color 2 instead of framebuffer alpha((USEACB = 1))In not alpha channel blending mode (USEACB = 0):Set the ‘alpha source’ for the framebuffer.In alpha channel blending mode (USEACB = 1):Blend alpha in color 2 instead of framebuffer alpha00B: BC2A = 1: use alpha from framebuffer as destination (DST_A)else: BC2A = 0: use alpha in color 2 as destination (DST_A) 0 (00): use alpha from color 2 1 (01): use source alpha (pixel coverage) 2 (10): use 0.0 as alpha 3 (11): use alpha from framebuffer |
RLEENABLE | RLE enable 0 (0): RLE disabled 1 (1): RLE enabled |
CLUTENABLE | CLUT enable 0 (0): CLUT disabled 1 (1): CLUT enabled |
COLKEYENABLE | color keying enable 0 (0): color keying disabled 1 (1): color keying enabled |
CLUTFORMAT | Format of the CLUT 0 (0): aRGB(8888) 1 (1): RGB(565) |
BSIA | Blend source factor inverted in alpha channel (USEACB = 1) 0 (0): use blend factor as specified through BSFA 1 (1): invert blend source factor (1-x) |
BDIA | Blend destination factor inverted in alpha channel (USEACB = 1) 0 (0): use blend factor as specified through BDFA 1 (1): invert blend destination factor (1-x) |
RLEPIXELWIDTH | Texel width for RLE unit 0 (00): 1 byte per texel 1 (01): 2 byte per texel 2 (10): 3 byte per texel 3 (11): 4 byte per texel |